package de.bw.jeans.alarminfo;

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.text.SpannableString;
import android.text.style.UnderlineSpan;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import de.bw.jeans.alarminfo.datatypes.Alarmdaten;
import de.bw.jeans.alarminfo.tools.XmlFileTools;

public class ShowAlertDetailsActivity extends Activity {

	String     alarmId;
	Alarmdaten alarmdaten;
	TextView   tvUeberschrift;
	TextView   tvStichwort;
	TextView   tvStrasse;
	TextView   tvWohnort;
	TextView   tvMelderName;
	TextView   tvMelderTelNr;
	TextView   tvMelderZusatz;
	TextView   tvName;
	Button	   btnWebAnsicht;
	
	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) {
	    super.onCreate(savedInstanceState);
	    setContentView(R.layout.activity_showalertdetails);
	
	    // Die Daten aus dem XML-File einlesen
	    ArrayList<Alarmdaten> alarmDaten = XmlFileTools.readAlertXmlFile(this);
	    
	    // Einlesen der übergebenen Daten
	    final String SICHERUNGSFILE_NAME = "SelectedAlert.txt";
	    try {
    		FileInputStream fis = openFileInput(SICHERUNGSFILE_NAME);
    		InputStreamReader inputStreamReader = new InputStreamReader(fis);
    		BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
    		alarmId = bufferedReader.readLine();
    		bufferedReader.close();
    		inputStreamReader.close();
    		fis.close();
	    }
	    catch(Exception ex) {
    		Log.d("AlarmInfo", "Fehler beim lesen der Sicherungsfiles \"" + SICHERUNGSFILE_NAME + "\"!");
	    }
	    	    
	    // Die übergebenen Daten in ein Alarm-Objekt umwandeln
	    Alarmdaten alarmdaten = null;
	    for (Alarmdaten serverAlarmdaten : alarmDaten) {
			if(serverAlarmdaten.getAlarmId().equals(alarmId)) {
				alarmdaten = serverAlarmdaten;
				break;
			}
		}
	    
	    // Suchen der benötigten Views
	    tvUeberschrift 	= (TextView) findViewById(R.id.textView1);
	    tvStichwort 	= (TextView) findViewById(R.id.textView3);
	    tvStrasse 		= (TextView) findViewById(R.id.textView5);
	    tvWohnort 		= (TextView) findViewById(R.id.textView7);
	    tvMelderName 	= (TextView) findViewById(R.id.textView9);
	    tvMelderTelNr	= (TextView) findViewById(R.id.textView11);
	    tvMelderZusatz  = (TextView) findViewById(R.id.textView13);
	    tvName 			= (TextView) findViewById(R.id.textView15);
	    btnWebAnsicht	= (Button)   findViewById(R.id.button2);
	    
	    // Die Überschrift unterstreichen
	    String udata="Einsatzdetails";
	    SpannableString content = new SpannableString(udata);
	    content.setSpan(new UnderlineSpan(), 0, udata.length(), 0);
	    tvUeberschrift.setText(content);
	    
	    // Die Daten auf den Schirm schreiben
	    tvStichwort.setText(alarmdaten.getStichwort());
	    tvStrasse.setText(alarmdaten.getEinsatzStrasse());
	    tvWohnort.setText(alarmdaten.getEinsatzOrt());
	    tvMelderName.setText(alarmdaten.getMelderName());
	    tvMelderTelNr.setText(alarmdaten.getMelderErreichbarkeit());
	    tvMelderZusatz.setText(alarmdaten.getMelderZusatz());
	    tvName.setText(alarmdaten.getPatientenname());
	    
	    // Den Button 'MailAnsicht' implementieren
	    btnWebAnsicht.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				Intent intent = new Intent(v.getContext(), ShowAlertWebviewActivity.class);
				intent.putExtra("alertId", alarmId);
				startActivity(intent);
			}
		});
	    
	    // Den TESTBUTTON definieren...
	    Button testButton = (Button) findViewById(R.id.button1);
	    testButton.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {

			}
		});
	}

}
